home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 147 / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin / docs / ippon / data / etc / lboss03s.lzh / LBOSS03s.c next >
C/C++ Source or Header  |  1999-05-13  |  3KB  |  134 lines

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4.  
  5.  
  6. #define LENGTH    45.25
  7. #define LENGTH2    22.63
  8. #define LENGTH_CORE_OUTER    (sqrt(32.5 * 32.5 + 32.5*32.5))
  9. #define LENGTH_CORE_INNER    (9.0)
  10. #define LENGTH_SHOT    (24.0)
  11.  
  12. #define    LENGTH_SHOT9_21        (50.0)
  13. #define    LENGTH_SHOT9_22        (35.0)
  14. #define    LENGTH_SHOT9_23        (20.0)
  15.  
  16.  
  17.  
  18. void usage (void)
  19. {
  20.     printf ("OTOKO.X 用テーブルを作成する lboss03s.x ver1.00\n"
  21.         "        programmed by Mitsuky <FreeSoftware>\n"
  22.     );
  23. }
  24.  
  25.  
  26.  
  27. int maketable (void)
  28. {
  29.     int i, j;
  30.  
  31.     j = 0;
  32.  
  33.     /* パーツ用 */
  34.     printf ("/* パーツ用 */\n");
  35.     for (i = 0; i < 32; i++) {
  36.         signed short s, c;
  37.         s = sin (2.0 * M_PI * (long) i / 32.0) * LENGTH;
  38.         c = cos (2.0 * M_PI * (long) i / 32.0) * LENGTH;
  39.         printf ("{%hd,%hd}, ", s, c);
  40.         j++;
  41.         if (j >= 8) {
  42.             printf ("\n");
  43.             j = 0;
  44.         }
  45.     }
  46.     printf ("\n");
  47.  
  48.     printf ("/* コア(外側)用 */\n");
  49.     for (i = 0; i < 32; i++) {
  50.         signed short s, c;
  51.         s = sin (2.0 * M_PI * (long) i / 32.0) * LENGTH_CORE_OUTER;
  52.         c = cos (2.0 * M_PI * (long) i / 32.0) * LENGTH_CORE_OUTER;
  53.         printf ("{%hd,%hd}, ", s, c);
  54.     }
  55.     printf ("\n\n");
  56.  
  57.     printf ("/* コア(内側)用 */\n");
  58.     for (i = 0; i < 32; i++) {
  59.         signed short s, c;
  60.         s = sin (2.0 * M_PI * (long) i / 32.0) * LENGTH_CORE_INNER;
  61.         c = cos (2.0 * M_PI * (long) i / 32.0) * LENGTH_CORE_INNER;
  62.         printf ("{%hd,%hd}, ", s, c);
  63.     }
  64.     printf ("\n\n");
  65.  
  66.     printf ("/* ショット用 */\n");
  67.     for (i = 0; i < 32; i++) {
  68.         signed short s, c;
  69.         s = sin (2.0 * M_PI * (long) i / 32.0) * LENGTH_SHOT;
  70.         c = cos (2.0 * M_PI * (long) i / 32.0) * LENGTH_SHOT;
  71.         printf ("{%hd,%hd}, ", s, c);
  72.     }
  73.     printf ("\n\n");
  74.  
  75.     
  76.     printf ("/* ショット用・第2形態円形大 */\n");
  77.     for (i = 0; i < 32; i+=2) {
  78.         signed short s, c;
  79.         s = sin (2.0 * M_PI * (long) i / 32.0) * LENGTH_SHOT9_21;
  80.         c = cos (2.0 * M_PI * (long) i / 32.0) * LENGTH_SHOT9_21;
  81.         printf ("{%hd,%hd}, ", s, c);
  82.     }
  83.     printf ("\n\n");
  84.  
  85.     printf ("/* ショット用・第2形態円形中 */\n");
  86.     for (i = 0; i < 32; i+=4) {
  87.         signed short s, c;
  88.         s = sin (2.0 * M_PI * (long) i / 32.0) * LENGTH_SHOT9_22;
  89.         c = cos (2.0 * M_PI * (long) i / 32.0) * LENGTH_SHOT9_22;
  90.         printf ("{%hd,%hd}, ", s, c);
  91.     }
  92.     printf ("\n\n");
  93.  
  94.     printf ("/* ショット用・第2形態円形小 */\n");
  95.     for (i = 0; i < 32; i+=4) {
  96.         signed short s, c;
  97.         s = sin (2.0 * M_PI * (long) i / 32.0) * LENGTH_SHOT9_23;
  98.         c = cos (2.0 * M_PI * (long) i / 32.0) * LENGTH_SHOT9_23;
  99.         printf ("{%hd,%hd}, ", s, c);
  100.     }
  101.     printf ("\n\n");
  102.  
  103.  
  104.  
  105.     /* 銀玉用 */
  106.     printf ("/* パーツ用 */\n");
  107.     for (i = 0; i < 32; i++) {
  108.         signed short s, c;
  109.         s = sin (2.0 * M_PI * (long) i / 32.0) * LENGTH2;
  110.         c = cos (2.0 * M_PI * (long) i / 32.0) * LENGTH2;
  111.         printf ("{%hd,%hd}, ", s, c);
  112.         j++;
  113.         if (j >= 8) {
  114.             printf ("\n");
  115.             j = 0;
  116.         }
  117.     }
  118.  
  119.     return (0);
  120. }
  121.  
  122.  
  123.  
  124. int main (int argc, char *argv[])
  125. {
  126.     if (argc != 1) {
  127.         usage ();
  128.         return (-1);
  129.     }
  130.     maketable ();
  131.  
  132.     return (0);
  133. }
  134.